<?php 
	// 控制器 基类
	class Controller extends Smarty
	{	
		// smarty初始化配置 
		public function __construct()
		{
			// 配置保存目录
			$this->setTemplateDir('./views')
				   ->setCompileDir('./runtime/views_c')	
				   ->setConfigDir('./configs')	
				   ->setCacheDir('./runtime/caches');
			// 配置模板变量定界符
			$this->left_delimiter = LEFT_D;	
			$this->right_delimiter = RIGHT_D;
			// 配置 缓存的控制
			$this->caching = CACHING;
			$this->cache_lifetime =CACHE_LIFETIME;
		}

		// 跳转重定向
		public function redirect($message, $url = null)
		{
			echo "<script>alert('{$message}')</script>";
			if (empty($url)) {
				echo "<script>history.back()</script>";
			} else {
				echo "<script>location.href='{$url}'</script>";
			}
		}

		// 当调用方法不存在时自动触发该魔术方法
		// 要传两个参数：方法名 参数
		public function __call($fun,$params)
		{
			header("HTTP/1.0 404not found");
			echo '<h1>来自于控制器的404 NOT FOUND</h1>';
		}
	}
 ?>